package com.xunji.standard.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xunji.standard.entity.CaseFile;

import java.util.ArrayList;
import java.util.List;

/**
 * @Author: xuqiang_imyours
 * @Date: 2025/6/23 15:56
 * @Description:
 **/
public interface CaseFileService extends IService<CaseFile> {
    List<CaseFile> listPageFilesByInfos(String fileType, ArrayList<Long> infoIds);

    CaseFile getCaseFileById(String id);

    void deleteById(String id);

    void update(CaseFile caseFile);

    Page<CaseFile> listPageFilesByInfos(String fileType, ArrayList<Long> infoIds, int pageNumber, int pageSize);

    long getCountByFileStatus(ArrayList<Long> infoIds, String fileStatus);

    // 检验是否全部解析完成
    boolean isAllAnalyzed(String caseId);

    List<CaseFile> selectListByInfoIdAndFileName(String caseId, Long infoId, String fileName);

    void deleteByCaseId(String caseId);

    void updateExcelPassword(String originalPath, CaseFile caseFile, String password);

    boolean isExits(String originalName, List<Long> infoIds);

    void deleteByCaseIdAndInfoId(String caseId, Long infoId);

    List<CaseFile> selectListByInfoIdAndCaseId(String caseId, Long infoId);

    List<CaseFile> selectListByCaseId(String caseId);
}
